home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / misc / volume8 / cz / part04 < prev    next >
Encoding:
Text File  |  1989-09-30  |  46.7 KB  |  1,323 lines

  1. Newsgroups: comp.sources.misc
  2. subject: v08i068: cz text to PostScript system, part 04 of 14
  3. from: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)
  4. Reply-To: howard@dahlbeck.ericsson.se (Howard Gayle)
  5.  
  6. Posting-number: Volume 8, Issue 68
  7. Submitted-by: howard@dahlbeck.ericsson.se (Howard Gayle)
  8. Archive-name: cz/part04
  9.  
  10. #! /bin/sh
  11. # This is a shell archive.  Remove anything before this line, then feed it
  12. # into a shell via "sh file" or similar.  To overwrite existing files,
  13. # type "sh file -c".
  14. # The tool that generated this appeared in the comp.sources.unix newsgroup;
  15. # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
  16. # If this archive is complete, you will see the following message at the end:
  17. #        "End of archive 4 (of 14)."
  18. # Contents:  8859-1.m4 Makefile T-61.m4 bytefreq.c cz-Gnews.el
  19. #   dkus.code
  20. # Wrapped by howard@dahlbeck on Mon Sep 25 07:15:15 1989
  21. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  22. if test -f '8859-1.m4' -a "${1}" != "-c" ; then 
  23.   echo shar: Will not clobber existing file \"'8859-1.m4'\"
  24. else
  25. echo shar: Extracting \"'8859-1.m4'\" \(14218 characters\)
  26. sed "s/^X//" >'8859-1.m4' <<'END_OF_FILE'
  27. Xdnl 8859-1.m4 - m4 include file with ISO 8859/1 reencoding
  28. Xdnl
  29. Xdnl $Header: 8859-1.m4,v 1.3 89/07/07 07:17:12 howard Exp $
  30. Xdnl
  31. Xdnl The following is based on code written by Timothy Hayes and Glenn Reid:
  32. X/ISOLatin1Encoding where
  33. X   {% ifelse
  34. X   PPOP % ignore dictionary
  35. X   /BuiltinEncoding(*)PDEF % Display in version string.
  36. X   save % Ignore following definition.
  37. X   true
  38. X   }
  39. X   {% else
  40. X   /BuiltinEncoding()PDEF % Display in version string.
  41. X   false
  42. X   }
  43. Xifelse
  44. X
  45. X/ISOLatin1Encoding[%def
  46. X/.notdef       % 0/ 0    0    0   0  NUL (null)
  47. X/.notdef       % 0/ 1    1    1   1  SOH (start of heading)
  48. X/.notdef       % 0/ 2    2    2   2  STX (start of text)
  49. X/.notdef       % 0/ 3    3    3   3  ETX (end of text)
  50. X/.notdef       % 0/ 4    4    4   4  EOT (end of transmission)
  51. X/.notdef       % 0/ 5    5    5   5  ENQ (enquiry)
  52. X/.notdef       % 0/ 6    6    6   6  ACK (acknowledge)
  53. X/.notdef       % 0/ 7    7    7   7  BEL (bell)
  54. X/.notdef       % 0/ 8   10    8   8  BS  (backspace)
  55. X/.notdef       % 0/ 9   11    9   9  HT  (horizontal tabulation)
  56. X/.notdef       % 0/10   12   10   A  LF  (line feed)
  57. X/.notdef       % 0/11   13   11   B  VT  (vertical tabulation)
  58. X/.notdef       % 0/12   14   12   C  FF  (form feed)
  59. X/.notdef       % 0/13   15   13   D  CR  (carriage return)
  60. X/.notdef       % 0/14   16   14   E  SO  (shift out)
  61. X/.notdef       % 0/15   17   15   F  SI  (shift in)
  62. X/.notdef       % 1/ 0   20   16  10  DLE (data link escape)
  63. X/.notdef       % 1/ 1   21   17  11  DC1 (device control 1)
  64. X/.notdef       % 1/ 2   22   18  12  DC2 (device control 2)
  65. X/.notdef       % 1/ 3   23   19  13  DC3 (device control 3)
  66. X/.notdef       % 1/ 4   24   20  14  DC4 (device control 4)
  67. X/.notdef       % 1/ 5   25   21  15  NAK (negative aknowledge)
  68. X/.notdef       % 1/ 6   26   22  16  SYN (synchronous idle)
  69. X/.notdef       % 1/ 7   27   23  17  ETB (end of transmission block)
  70. X/.notdef       % 1/ 8   30   24  18  CAN (cancel)
  71. X/.notdef       % 1/ 9   31   25  19  EM  (end of medium)
  72. X/.notdef       % 1/10   32   26  1A  SUB (substitute character)
  73. X/.notdef       % 1/11   33   27  1B  ESC (escape)
  74. X/.notdef       % 1/12   34   28  1C  IS4/FS (information separator 4 / file separator)
  75. X/.notdef       % 1/13   35   29  1D  IS3/GS (information separator 3 / group separator)
  76. X/.notdef       % 1/14   36   30  1E  IS2/RS (information separator 2 / record separator)
  77. X/.notdef       % 1/15   37   31  1F  IS1/US (information separator 1 / unit separator)
  78. X/space         % 2/ 0   40   32  20  space
  79. X/exclam        % 2/ 1   41   33  21  exclamation mark
  80. X/quotedbl      % 2/ 2   42   34  22  quotation mark
  81. X/numbersign    % 2/ 3   43   35  23  number sign
  82. X/dollar        % 2/ 4   44   36  24  dollar sign
  83. X/percent       % 2/ 5   45   37  25  percent sign
  84. X/ampersand     % 2/ 6   46   38  26  ampersand
  85. X/quoteright    % 2/ 7   47   39  27  apostrophe
  86. X/parenleft     % 2/ 8   50   40  28  left parenthesis
  87. X/parenright    % 2/ 9   51   41  29  right parenthesis
  88. X/asterisk      % 2/10   52   42  2A  asterisk
  89. X/plus          % 2/11   53   43  2B  plus sign
  90. X/comma         % 2/12   54   44  2C  comma
  91. X/minus         % 2/13   55   45  2D  hyphen, minus sign
  92. X/period        % 2/14   56   46  2E  full stop
  93. X/slash         % 2/15   57   47  2F  solidus
  94. X/zero          % 3/ 0   60   48  30  digit zero
  95. X/one           % 3/ 1   61   49  31  digit one
  96. X/two           % 3/ 2   62   50  32  digit two
  97. X/three         % 3/ 3   63   51  33  digit three
  98. X/four          % 3/ 4   64   52  34  digit four
  99. X/five          % 3/ 5   65   53  35  digit five
  100. X/six           % 3/ 6   66   54  36  digit six
  101. X/seven         % 3/ 7   67   55  37  digit seven
  102. X/eight         % 3/ 8   70   56  38  digit eight
  103. X/nine          % 3/ 9   71   57  39  digit nine
  104. X/colon         % 3/10   72   58  3A  colon
  105. X/semicolon     % 3/11   73   59  3B  semicolon
  106. X/less          % 3/12   74   60  3C  less-than sign
  107. X/equal         % 3/13   75   61  3D  equals sign
  108. X/greater       % 3/14   76   62  3E  greater-than sign
  109. X/question      % 3/15   77   63  3F  question mark
  110. X/at            % 4/ 0  100   64  40  commercial at
  111. X/A             % 4/ 1  101   65  41  A
  112. X/B             % 4/ 2  102   66  42  B
  113. X/C             % 4/ 3  103   67  43  C
  114. X/D             % 4/ 4  104   68  44  D
  115. X/E             % 4/ 5  105   69  45  E
  116. X/F             % 4/ 6  106   70  46  F
  117. X/G             % 4/ 7  107   71  47  G
  118. X/H             % 4/ 8  110   72  48  H
  119. X/I             % 4/ 9  111   73  49  I
  120. X/J             % 4/10  112   74  4A  J
  121. X/K             % 4/11  113   75  4B  K
  122. X/L             % 4/12  114   76  4C  L
  123. X/M             % 4/13  115   77  4D  M
  124. X/N             % 4/14  116   78  4E  N
  125. X/O             % 4/15  117   79  4F  O
  126. X/P             % 5/ 0  120   80  50  P
  127. X/Q             % 5/ 1  121   81  51  Q
  128. X/R             % 5/ 2  122   82  52  R
  129. X/S             % 5/ 3  123   83  53  S
  130. X/T             % 5/ 4  124   84  54  T
  131. X/U             % 5/ 5  125   85  55  U
  132. X/V             % 5/ 6  126   86  56  V
  133. X/W             % 5/ 7  127   87  57  W
  134. X/X             % 5/ 8  130   88  58  X
  135. X/Y             % 5/ 9  131   89  59  Y
  136. X/Z             % 5/10  132   90  5A  Z
  137. X/bracketleft   % 5/11  133   91  5B  left square bracket
  138. X/backslash     % 5/12  134   92  5C  reverse solidus
  139. X/bracketright  % 5/13  135   93  5D  right square bracket
  140. X/asciicircum   % 5/14  136   94  5E  circumflex accent
  141. X/underscore    % 5/15  137   95  5F  low line, underline
  142. X/quoteleft     % 6/ 0  140   96  60  grave accent
  143. X/a             % 6/ 1  141   97  61  a
  144. X/b             % 6/ 2  142   98  62  b
  145. X/c             % 6/ 3  143   99  63  c
  146. X/d             % 6/ 4  144  100  64  d
  147. X/e             % 6/ 5  145  101  65  e
  148. X/f             % 6/ 6  146  102  66  f
  149. X/g             % 6/ 7  147  103  67  g
  150. X/h             % 6/ 8  150  104  68  h
  151. X/i             % 6/ 9  151  105  69  i
  152. X/j             % 6/10  152  106  6A  j
  153. X/k             % 6/11  153  107  6B  k
  154. X/l             % 6/12  154  108  6C  l
  155. X/m             % 6/13  155  109  6D  m
  156. X/n             % 6/14  156  110  6E  n
  157. X/o             % 6/15  157  111  6F  o
  158. X/p             % 7/ 0  160  112  70  p
  159. X/q             % 7/ 1  161  113  71  q
  160. X/r             % 7/ 2  162  114  72  r
  161. X/s             % 7/ 3  163  115  73  s
  162. X/t             % 7/ 4  164  116  74  t
  163. X/u             % 7/ 5  165  117  75  u
  164. X/v             % 7/ 6  166  118  76  v
  165. X/w             % 7/ 7  167  119  77  w
  166. X/x             % 7/ 8  170  120  78  x
  167. X/y             % 7/ 9  171  121  79  y
  168. X/z             % 7/10  172  122  7A  z
  169. X/braceleft     % 7/11  173  123  7B  left curly bracket
  170. X/bar           % 7/12  174  124  7C  vertical line
  171. X/braceright    % 7/13  175  125  7D  right curly bracket
  172. X/asciitilde    % 7/14  176  126  7E  tilde
  173. X/.notdef       % 7/15  177  127  7F  DEL (delete)
  174. X/.notdef       % 8/ 0  200  128  80
  175. X/.notdef       % 8/ 1  201  129  81
  176. X/.notdef       % 8/ 2  202  130  82
  177. X/.notdef       % 8/ 3  203  131  83
  178. X/.notdef       % 8/ 4  204  132  84
  179. X/.notdef       % 8/ 5  205  133  85
  180. X/.notdef       % 8/ 6  206  134  86
  181. X/.notdef       % 8/ 7  207  135  87
  182. X/.notdef       % 8/ 8  210  136  88
  183. X/.notdef       % 8/ 9  211  137  89
  184. X/.notdef       % 8/10  212  138  8A
  185. X/.notdef       % 8/11  213  139  8B
  186. X/.notdef       % 8/12  214  140  8C
  187. X/.notdef       % 8/13  215  141  8D
  188. X/.notdef       % 8/14  216  142  8E
  189. X/.notdef       % 8/15  217  143  8F
  190. X/dotlessi      % 9/ 0  220  144  90
  191. X/grave         % 9/ 1  221  145  91
  192. X/acute         % 9/ 2  222  146  92
  193. X/circumflex    % 9/ 3  223  147  93
  194. X/tilde         % 9/ 4  224  148  94
  195. X/macron        % 9/ 5  225  149  95
  196. X/breve         % 9/ 6  226  150  96
  197. X/dotaccent     % 9/ 7  227  151  97
  198. X/dieresis      % 9/ 8  230  152  98
  199. X/.notdef       % 9/ 9  231  153  99
  200. X/ring          % 9/10  232  154  9A
  201. X/cedilla       % 9/11  233  155  9B
  202. X/.notdef       % 9/12  234  156  9C
  203. X/hungarumlaut  % 9/13  235  157  9D
  204. X/ogonek        % 9/14  236  158  9E
  205. X/caron         % 9/15  237  159  9F
  206. X/space         %10/ 0  240  160  A0  NBSP (no-break space)
  207. X/exclamdown    %10/ 1  241  161  A1  inverted exclamation mark
  208. X/cent          %10/ 2  242  162  A2  cent sign
  209. X/sterling      %10/ 3  243  163  A3  pound sign
  210. X/currency      %10/ 4  244  164  A4  general currency sign
  211. X/yen           %10/ 5  245  165  A5  yen sign
  212. X/brokenbar     %10/ 6  246  166  A6  broken vertical line
  213. X/section       %10/ 7  247  167  A7  section sign
  214. X/dieresis      %10/ 8  250  168  A8  diaeresis
  215. X/copyright     %10/ 9  251  169  A9  copyright sign
  216. X/ordfeminine   %10/10  252  170  AA  ordinal indicator, feminine
  217. X/guillemotleft %10/11  253  171  AB  angle quotation mark left
  218. X/logicalnot    %10/12  254  172  AC  not sign
  219. X/hyphen        %10/13  255  173  AD  soft hyphen
  220. X/registered    %10/14  256  174  AE  registered sign
  221. X/macron        %10/15  257  175  AF  macron
  222. X/degree        %11/ 0  260  176  B0  degree sign
  223. X/plusminus     %11/ 1  261  177  B1  plus or minus sign
  224. X/twosuperior   %11/ 2  262  178  B2  superscript two
  225. X/threesuperior %11/ 3  263  179  B3  superscript three
  226. X/acute         %11/ 4  264  180  B4  acute accent
  227. X/mu            %11/ 5  265  181  B5  micro sign
  228. X/paragraph     %11/ 6  266  182  B6  pilcrow
  229. X/periodcentered%11/ 7  267  183  B7  middle dot
  230. X/cedilla       %11/ 8  270  184  B8  cedilla
  231. X/onesuperior   %11/ 9  271  185  B9  superscript one
  232. X/ordmasculine  %11/10  272  186  BA  ordinal indicator, masculine
  233. X/guillemotright%11/11  273  187  BB  angle quotation mark right
  234. X/onequarter    %11/12  274  188  BC  fraction one-quarter
  235. X/onehalf       %11/13  275  189  BD  fraction one-half
  236. X/threequarters %11/14  276  190  BE  fraction three-quarters
  237. X/questiondown  %11/15  277  191  BF  inverted question mark
  238. X/Agrave        %12/ 0  300  192  C0  capital A with grave accent
  239. X/Aacute        %12/ 1  301  193  C1  capital A with acute accent
  240. X/Acircumflex   %12/ 2  302  194  C2  capital A with circumflex accent
  241. X/Atilde        %12/ 3  303  195  C3  capital A with tilde
  242. X/Adieresis     %12/ 4  304  196  C4  capital A with diaeresis or umlaut mark
  243. X/Aring         %12/ 5  305  197  C5  capital A with ring
  244. X/AE            %12/ 6  306  198  C6  capital AE diphthong
  245. X/Ccedilla      %12/ 7  307  199  C7  capital C with cedilla
  246. X/Egrave        %12/ 8  310  200  C8  capital E with grave accent
  247. X/Eacute        %12/ 9  311  201  C9  capital E with acute accent
  248. X/Ecircumflex   %12/10  312  202  CA  capital E with circumflex accent
  249. X/Edieresis     %12/11  313  203  CB  capital E with diaeresis or umlaut mark
  250. X/Igrave        %12/12  314  204  CC  capital I with grave accent
  251. X/Iacute        %12/13  315  205  CD  capital I with acute accent
  252. X/Icircumflex   %12/14  316  206  CE  capital I with circumflex accent
  253. X/Idieresis     %12/15  317  207  CF  capital I with diaeresis or umlaut mark
  254. X/Eth           %13/ 0  320  208  D0  capital D with stroke, Icelandic eth
  255. X/Ntilde        %13/ 1  321  209  D1  capital N with tilde
  256. X/Ograve        %13/ 2  322  210  D2  capital O with grave accent
  257. X/Oacute        %13/ 3  323  211  D3  capital O with acute accent
  258. X/Ocircumflex   %13/ 4  324  212  D4  capital O with circumflex accent
  259. X/Otilde        %13/ 5  325  213  D5  capital O with tilde
  260. X/Odieresis     %13/ 6  326  214  D6  capital O with diaeresis or umlaut mark
  261. X/multiply      %13/ 7  327  215  D7  multiplication sign
  262. X/Oslash        %13/ 8  330  216  D8  capital O with slash
  263. X/Ugrave        %13/ 9  331  217  D9  capital U with grave accent
  264. X/Uacute        %13/10  332  218  DA  capital U with acute accent
  265. X/Ucircumflex   %13/11  333  219  DB  capital U with circumflex accent
  266. X/Udieresis     %13/12  334  220  DC  capital U with diaeresis or umlaut mark
  267. X/Yacute        %13/13  335  221  DD  capital Y with acute accent
  268. X/Thorn         %13/14  336  222  DE  capital thorn, Icelandic
  269. X/germandbls    %13/15  337  223  DF  small sharp s, German
  270. X/agrave        %14/ 0  340  224  E0  small a with grave accent
  271. X/aacute        %14/ 1  341  225  E1  small a with acute accent
  272. X/acircumflex   %14/ 2  342  226  E2  small a with circumflex accent
  273. X/atilde        %14/ 3  343  227  E3  small a with tilde
  274. X/adieresis     %14/ 4  344  228  E4  small a with diaeresis or umlaut mark
  275. X/aring         %14/ 5  345  229  E5  small a with ring
  276. X/ae            %14/ 6  346  230  E6  small ae diphthong
  277. X/ccedilla      %14/ 7  347  231  E7  small c with cedilla
  278. X/egrave        %14/ 8  350  232  E8  small e with grave accent
  279. X/eacute        %14/ 9  351  233  E9  small e with acute accent
  280. X/ecircumflex   %14/10  352  234  EA  small e with circumflex accent
  281. X/edieresis     %14/11  353  235  EB  small e with diaeresis or umlaut mark
  282. X/igrave        %14/12  354  236  EC  small i with grave accent
  283. X/iacute        %14/13  355  237  ED  small i with acute accent
  284. X/icircumflex   %14/14  356  238  EE  small i with circumflex accent
  285. X/idieresis     %14/15  357  239  EF  small i with diaeresis or umlaut mark
  286. X/eth           %15/ 0  360  240  F0  small d with stroke, Icelandic eth
  287. X/ntilde        %15/ 1  361  241  F1  small n with tilde
  288. X/ograve        %15/ 2  362  242  F2  small o with grave accent
  289. X/oacute        %15/ 3  363  243  F3  small o with acute accent
  290. X/ocircumflex   %15/ 4  364  244  F4  small o with circumflex accent
  291. X/otilde        %15/ 5  365  245  F5  small o with tilde
  292. X/odieresis     %15/ 6  366  246  F6  small o with diaeresis or umlaut mark
  293. X/divide        %15/ 7  367  247  F7  division sign
  294. X/oslash        %15/ 8  370  248  F8  small o with slash
  295. X/ugrave        %15/ 9  371  249  F9  small u with grave accent
  296. X/uacute        %15/10  372  250  FA  small u with acute accent
  297. X/ucircumflex   %15/11  373  251  FB  small u with circumflex accent
  298. X/udieresis     %15/12  374  252  FC  small u with diaeresis or umlaut mark
  299. X/yacute        %15/13  375  253  FD  small y with acute accent
  300. X/thorn         %15/14  376  254  FE  small thorn, Icelandic
  301. X/ydieresis     %15/15  377  255  FF  small y with diaeresis or umlaut mark
  302. X]PDEF
  303. X
  304. X% boolean still on stack from previous "ifelse" statement
  305. X{restore}if
  306. X
  307. X`/'REENCOD % /NewName  /OldName REENCOD
  308. X   {% def
  309. X   PFNDFNT dup length dict % Create dictionary as big as OldName.
  310. X   begin % Use it.
  311. X         { % forall
  312. X         1 index/FID ne{PDEF}{PPOP PPOP}ifelse
  313. X         }
  314. X      forall % For each key / value pair in OldName except /Fid, define it.
  315. X      /Encoding ISOLatin1Encoding PDEF % Use different encoding.
  316. X      currentdict % Push new dictionary.
  317. X   end
  318. X   definefont PPOP
  319. X   }PBIND PDEF
  320. END_OF_FILE
  321. if test 14218 -ne `wc -c <'8859-1.m4'`; then
  322.     echo shar: \"'8859-1.m4'\" unpacked with wrong size!
  323. fi
  324. # end of '8859-1.m4'
  325. fi
  326. if test -f 'Makefile' -a "${1}" != "-c" ; then 
  327.   echo shar: Will not clobber existing file \"'Makefile'\"
  328. else
  329. echo shar: Extracting \"'Makefile'\" \(7461 characters\)
  330. sed "s/^X//" >'Makefile' <<'END_OF_FILE'
  331. X# Makefile - main GNU make file for cz
  332. X#
  333. X# $Header: Makefile,v 1.18 89/09/23 17:00:19 howard Exp $
  334. X#
  335. X# Copyright 1989 Howard Lee Gayle
  336. X# This file is written in the ISO 8859/1 character set.
  337. X#
  338. X# This program is free software; you can redistribute it and/or modify
  339. X# it under the terms of the GNU General Public License version 1,
  340. X# as published by the Free Software Foundation.
  341. X#
  342. X# This program is distributed in the hope that it will be useful,
  343. X# but WITHOUT ANY WARRANTY; without even the implied warranty of
  344. X# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  345. X# GNU General Public License for more details.
  346. X#
  347. X# You should have received a copy of the GNU General Public License
  348. X# along with this program; if not, write to the Free Software
  349. X# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  350. X
  351. Xinclude MakeCommon
  352. X
  353. X# Commands:
  354. X
  355. X# Binary file encoder.
  356. XABE=abe
  357. X
  358. X# Put a file into the distribution directory.
  359. XDISTO=mkDistO
  360. X
  361. X# Echo arguments.
  362. XECHO=echo
  363. X
  364. X# Elisp compiler.
  365. XELCMP=emacs -batch -q -f batch-byte-compile
  366. X
  367. X# Install a non-executable file.
  368. XINSTF=mkInstF
  369. X
  370. X# Install an executable file.
  371. XINSTX=mkInstX
  372. X
  373. X# Lint command.
  374. XLINT=lint
  375. X
  376. X# Make shar files.
  377. XSHAR=makekit
  378. X
  379. X# Spelling-check LaTeX source.
  380. XSPELL_LATEX=mkSpellLT
  381. X
  382. X# Command options:
  383. X
  384. X# Make files immune to IBM.
  385. XABEFLAGS=+ebcdic
  386. X
  387. X# Set commands at start of Bourne shell files, usually absolute paths.
  388. XBDEFS='l=lpr'
  389. X
  390. X# C compiler options.
  391. XCFLAGS=-O4
  392. X
  393. X# C library search path.
  394. XLIBPATH=-L/usr/local/free/howard/0
  395. X
  396. X# C libraries to link in.
  397. XLIBES=-lhoward -lm
  398. X
  399. X# Options to lint.
  400. XLINTFLAGS=-abchux
  401. X
  402. X# Lint libraries.
  403. XLL=/usr/local/free/howard/0/llib-howard.ln
  404. X
  405. X
  406. X# Directories:
  407. X
  408. X# Install Bourne shell files here.
  409. XBID=../bin
  410. X
  411. X# Install C executables here.
  412. XCID=../bin
  413. X
  414. X# Install encoding files here.
  415. XCODEID=../lib
  416. X
  417. X# Install compiled elisp here.
  418. XELID=../el
  419. X
  420. X# Install man entries here.
  421. XMID=../man
  422. X
  423. X# Install .ps files here.
  424. XPSID=../lib
  425. X
  426. X# Install .rc files here.  This must be an absolute path.
  427. XRCID=/usr/local/free/cz/2/lib
  428. X
  429. X# Install test texts here.
  430. XTID=../test
  431. X
  432. X# Install test PostScript files here.
  433. XTPSID=../test
  434. X
  435. X# Install trigram tables here.
  436. XTTID=../lib
  437. X
  438. X# Sources:
  439. X
  440. X# Bourne shell files.
  441. XBS := $(filter %.b,$(SRCS))
  442. X
  443. X# BibTeX bibliography file.
  444. XBIBS := $(filter %.bib,$(SRCS))
  445. X
  446. X# Encoding files.
  447. XCODES:=$(filter %.code,$(SRCS))
  448. X
  449. X# C programs.
  450. XCS := $(filter %.c,$(SRCS))
  451. X
  452. X# Elisp source.
  453. XELS := $(filter %.el,$(SRCS))
  454. X
  455. X# Frequency tables.
  456. XFRS := $(filter %.fr,$(SRCS))
  457. X
  458. X# C include files.
  459. XHS := $(filter %.h,$(SRCS))
  460. X
  461. X# LaTeX source.
  462. XLATEXS := $(filter %.tex,$(SRCS))
  463. X
  464. X# Manuals.
  465. XM1S := $(filter %.1,$(SRCS))# Section 1.
  466. Xms := $(M1S)
  467. X
  468. X# M4 macro processor sources.  (Not manual entries for section 4.)
  469. XM4S := $(filter %.m4,$(SRCS))
  470. X
  471. X# M4 that will turn into PostScript.
  472. XP4S := $(filter %.p4,$(SRCS))
  473. X
  474. X# Cz command files.
  475. XRCS := $(filter %.rc,$(SRCS))
  476. X
  477. X# Test PostScript files.
  478. XTPSS := $(filter %.ps,$(SRCS))
  479. X
  480. X# Test texts.
  481. XTS = 8859-1.t 8859-1-fox.t T-61.t char8-dec.t char8-hex.t char8-oct.t
  482. X
  483. X# All ordinary source files.  Removed by make clobber.
  484. Xsrc := $(BS) $(BIBS) $(CODES) $(CS) $(ELS) $(FRS) $(HS) \
  485. X       $(ms) $(M4S) $(P4S) $(RCS) $(LATEXS) $(TPSS) $(TS)
  486. X
  487. X# Absolutely all source files.
  488. Xallsrc := README FREEZE MakeCommon Makefile uMakefile $(src)
  489. X
  490. X
  491. X# Targets and installs:
  492. X
  493. X# Bourne shell files.
  494. Xbt := $(subst .b,,$(BS))
  495. Xbi := $(patsubst %,$(BID)/%,$(bt))
  496. X
  497. X# C programs.
  498. Xct := $(subst .c,,$(CS))
  499. Xci := $(patsubst %,$(CID)/%,$(ct))
  500. Xlt := $(patsubst %.c,%-l,$(CS))# Phony lint targets for C programs.
  501. Xst := $(subst .c,.s,$(CS))# Assembler targets for C programs.
  502. X
  503. X# Encoding files.
  504. Xcodei := $(patsubst %,$(CODEID)/%,$(CODES))
  505. X
  506. X# Compiled elisp.
  507. Xelt := $(subst .el,.elc,$(ELS))
  508. Xeli := $(patsubst %,$(ELID)/%,$(elt))
  509. X
  510. X# LaTeX.
  511. Xifdef FMTLATEX
  512. Xlatext := $(subst .tex,.texf,$(LATEXS))
  513. Xspellt := $(patsubst %.tex,%-s,$(LATEXS))#Phony targets for spelling checking.
  514. Xendif
  515. X
  516. X# Manual entries.
  517. Xcat1i := $(patsubst %,$(MID)/cat1/%,$(M1S))
  518. Xm1i   := $(patsubst %,$(MID)/man1/%,$(M1S))
  519. Xcati  := $(cat1i)
  520. Xmi    := $(m1i)
  521. X
  522. X# Formatted manual entries, e.g. PostScript.
  523. Xifdef FMTMAN
  524. Xft := $(patsubst %,%.f,$(ms))
  525. Xendif
  526. X
  527. X# PostScript from M4.
  528. Xpst := $(subst .p4,.ps,$(P4S))
  529. Xpsi := $(patsubst %,$(PSID)/%,$(pst))
  530. X
  531. X# Control files.
  532. Xrci := $(patsubst %,$(RCID)/%,$(RCS))
  533. X
  534. X# Test text.
  535. Xti := $(patsubst %,$(TID)/%,$(TS))
  536. X
  537. X# Test PostScript.
  538. Xtpsi := $(patsubst %,$(TPSID)/%,$(TPSS))
  539. X
  540. X# Trigram tables.
  541. Xttt =  dkus.tt seus.tt
  542. Xtti := $(patsubst %,$(TTID)/%,$(ttt))
  543. X
  544. Xtargets := $(bt) $(ct) $(elt) $(ft) $(latext) $(pst) $(RCS) $(TPSS) $(TS) $(ttt)
  545. X
  546. X# Distribution:
  547. Xdist := $(patsubst %,$(DD)/%,$(allsrc) $(ft) $(latext))
  548. X
  549. X# Don't use built-in rules.
  550. X.SUFFIXES:
  551. X.PHONY: clean clobber default dist install shar vars $(lt) $(spellt)
  552. X
  553. Xdefault: $(targets)
  554. X
  555. Xvars:
  556. X    @$(ECHO) 'SRCS:' $(SRCS)
  557. X    @$(ECHO) 'BS:' $(BS)
  558. X    @$(ECHO) 'CS:' $(CS)
  559. X    @$(ECHO) 'CZS:' $(CZS)
  560. X    @$(ECHO) 'ELS:' $(ELS)
  561. X    @$(ECHO) 'HS:' $(HS)
  562. X    @$(ECHO) 'M1S:' $(M1S)
  563. X    @$(ECHO) 'P4S:' $(P4S)
  564. X    @$(ECHO) 'RCS:' $(RCS)
  565. X    @$(ECHO) 'allsrc:' $(allsrc)
  566. X    @$(ECHO) 'bt:' $(bt)
  567. X    @$(ECHO) 'ct:' $(ct)
  568. X    @$(ECHO) 'elt:' $(elt)
  569. X    @$(ECHO) 'ft:' $(ft)
  570. X    @$(ECHO) 'lt:' $(lt)
  571. X    @$(ECHO) 'pst:' $(pst)
  572. X    @$(ECHO) 'st:' $(st)
  573. X    @$(ECHO) 'CFLAGS:' $(CFLAGS)
  574. X    @$(ECHO) 'DEFS:' $(DEFS)
  575. X    @$(ECHO) 'dist:' $(dist)
  576. X    @$(ECHO) 'ai:' $(ai)
  577. X    @$(ECHO) 'bi:' $(bi)
  578. X    @$(ECHO) 'cati:' $(cati)
  579. X    @$(ECHO) 'm1i:' $(m1i)
  580. X    @$(ECHO) 'psi:' $(psi)
  581. X    @$(ECHO) 'rci:' $(rci)
  582. X
  583. Xclean:
  584. X    -$(RM) depend $(st)
  585. X
  586. Xclobber: clean
  587. X    -$(RM) $(src) $(targets) FREEZE FREEZE.*
  588. X
  589. X$(bt): %: %.b
  590. X    $(RM) $@
  591. X    $(ECHO) '  $(BDEFS)' > $@
  592. X    $(CAT) $< >> $@
  593. X    $(CHMOD) +x $@
  594. X
  595. X$(ct): %: %.c
  596. X    $(CC) -o $@ $(CFLAGS) $(DEFS) -DDEFPATH='"'$(RCID)'"' $(INCLUDES) \
  597. X        $(LIBPATH) $*.c $(LIBES)
  598. X
  599. X$(elt): %.elc: %.el
  600. X    $(ELCMP) $<
  601. X
  602. X$(lt): %-l: %.c $(LL)
  603. X    $(LINT) $(LINTFLAGS) $(DEFS) -DDEFPATH='"'$(RCID)'"' $(INCLUDES) $< \
  604. X        $(LL)
  605. X
  606. Xifdef FMTMAN
  607. X$(ft): %.f: %
  608. X    $(RM) $@
  609. X    $(FMTMAN) $< > $@
  610. Xendif
  611. X
  612. Xifdef FMTLATEX
  613. X$(latext): %.texf: %.tex $(BIBS)
  614. X    $(FMTLATEX) $* $@
  615. X
  616. X$(spellt): %-s: %.tex
  617. X    $(SPELL_LATEX) $<
  618. Xendif
  619. X
  620. X$(pst): %.ps: %.p4 ps-abbrev.m4
  621. X    $(M4) $*.p4 | \
  622. X        $(SED) -e 's;%.*;;' \
  623. X        -e 's;    ; ;g' \
  624. X        -e 's;^  *;;' \
  625. X        -e 's;  *$$;;' \
  626. X        -e 's;  *; ;g' \
  627. X        -e '/^$$/d' > $@
  628. X
  629. Xdkus.tt: 78freq2tt dkus.code dk.fr us.fr
  630. X    $(RM) $@
  631. X    ./78freq2tt -d dkus.code dk.fr us.fr $@
  632. X
  633. Xseus.tt: 78freq2tt seus.code se.fr us.fr
  634. X    $(RM) $@
  635. X    ./78freq2tt -d seus.code se.fr us.fr $@
  636. X
  637. Xshar: $(allsrc)
  638. X    $(RM) test.abe
  639. X    $(ABE) $(ABEFLAGS) $(TS) > test.abe
  640. X    $(SHAR) README FREEZE MakeCommon Makefile uMakefile \
  641. X        $(BS) $(BIBS) $(CODES) $(CS) $(ELS) $(FRS) $(HS) \
  642. X        $(ms) $(M4S) $(P4S) $(RCS) $(LATEXS) $(TPSS) test.abe
  643. X
  644. X$(st): %.s: %.c
  645. X    $(CC) -S $(DEFS) -DDEFPATH='"'$(RCID)'"' $(INCLUDES) $<
  646. X
  647. Xifdef WORK
  648. X
  649. Xdist: $(dist)
  650. X
  651. X$(dist): $(DD)/%: %
  652. X    $(DISTO) $< $(DD)
  653. X
  654. X.DEFAULT:
  655. X    $(UNCMPRS) $@
  656. X
  657. Xelse # WORK
  658. X
  659. Xinstall: $(bi) $(ci) $(cati) $(codei) $(eli) $(mi) $(psi) \
  660. X         $(rci) $(ti) $(tpsi) $(tti)
  661. X
  662. X$(bi): $(BID)/%: %
  663. X    $(INSTF) $< $(BID)
  664. X
  665. X$(ci): $(CID)/%: %
  666. X    $(INSTX) $< $(CID)
  667. X
  668. X$(codei): $(CODEID)/%: %
  669. X    $(INSTF) $< $(CODEID)
  670. X
  671. X$(m1i): $(MID)/man1/%: %
  672. X    $(INSTF) $< $(MID)/man1
  673. X
  674. Xifdef CATMAN
  675. X$(cat1i): $(m1i)
  676. X    $(CATMAN) -M $(MID) 1
  677. Xendif
  678. X
  679. X$(eli): $(ELID)/%: %
  680. X    $(INSTF) $< $(ELID)
  681. X
  682. X$(psi): $(PSID)/%: %
  683. X    $(INSTF) $< $(PSID)
  684. X
  685. X$(rci): $(RCID)/%: %
  686. X    $(INSTF) $< $(RCID)
  687. X
  688. X$(ti): $(TID)/%: %
  689. X    $(INSTF) $< $(TID)
  690. X
  691. X$(tpsi): $(TPSID)/%: %
  692. X    $(INSTF) $< $(TPSID)
  693. X
  694. X$(tti): $(TTID)/%: %
  695. X    $(INSTF) $< $(TTID)
  696. X
  697. X$(allsrc): %: $(DD)/%
  698. X    $(DISTI) $@ $(DD)
  699. X
  700. X.DEFAULT:
  701. X    $(DISTI) $@ $(DD)
  702. X
  703. Xendif # WORK
  704. X
  705. X8859-1.ps: 8859-1.m4
  706. XT-61.ps: T-61.m4
  707. Xinclude depend
  708. END_OF_FILE
  709. if test 7461 -ne `wc -c <'Makefile'`; then
  710.     echo shar: \"'Makefile'\" unpacked with wrong size!
  711. fi
  712. # end of 'Makefile'
  713. fi
  714. if test -f 'T-61.m4' -a "${1}" != "-c" ; then 
  715.   echo shar: Will not clobber existing file \"'T-61.m4'\"
  716. else
  717. echo shar: Extracting \"'T-61.m4'\" \(14094 characters\)
  718. sed "s/^X//" >'T-61.m4' <<'END_OF_FILE'
  719. Xdnl T-61.m4 - m4 include file with CCITT T-61 reencoding
  720. Xdnl
  721. Xdnl $Header: T-61.m4,v 1.2 89/07/07 07:17:41 howard Exp $
  722. Xdnl
  723. Xdnl The following is based on code written by Timothy Hayes and Glenn Reid:
  724. X/BuiltinEncoding()d % Display in version string.
  725. X
  726. X/T61Encoding[%def
  727. X/.notdef       % 0/ 0    0    0   0  NUL (null)
  728. X/.notdef       % 0/ 1    1    1   1  SOH (start of heading)
  729. X/.notdef       % 0/ 2    2    2   2  STX (start of text)
  730. X/.notdef       % 0/ 3    3    3   3  ETX (end of text)
  731. X/.notdef       % 0/ 4    4    4   4  EOT (end of transmission)
  732. X/.notdef       % 0/ 5    5    5   5  ENQ (enquiry)
  733. X/.notdef       % 0/ 6    6    6   6  ACK (acknowledge)
  734. X/.notdef       % 0/ 7    7    7   7  BEL (bell)
  735. X/.notdef       % 0/ 8   10    8   8  BS  (backspace)
  736. X/.notdef       % 0/ 9   11    9   9  HT  (horizontal tabulation)
  737. X/.notdef       % 0/10   12   10   A  LF  (line feed)
  738. X/.notdef       % 0/11   13   11   B  VT  (vertical tabulation)
  739. X/.notdef       % 0/12   14   12   C  FF  (form feed)
  740. X/.notdef       % 0/13   15   13   D  CR  (carriage return)
  741. X/.notdef       % 0/14   16   14   E  SO  (shift out)
  742. X/.notdef       % 0/15   17   15   F  SI  (shift in)
  743. X/.notdef       % 1/ 0   20   16  10  DLE (data link escape)
  744. X/.notdef       % 1/ 1   21   17  11  DC1 (device control 1)
  745. X/.notdef       % 1/ 2   22   18  12  DC2 (device control 2)
  746. X/.notdef       % 1/ 3   23   19  13  DC3 (device control 3)
  747. X/.notdef       % 1/ 4   24   20  14  DC4 (device control 4)
  748. X/.notdef       % 1/ 5   25   21  15  NAK (negative aknowledge)
  749. X/.notdef       % 1/ 6   26   22  16  SYN (synchronous idle)
  750. X/.notdef       % 1/ 7   27   23  17  ETB (end of transmission block)
  751. X/.notdef       % 1/ 8   30   24  18  CAN (cancel)
  752. X/.notdef       % 1/ 9   31   25  19  EM  (end of medium)
  753. X/.notdef       % 1/10   32   26  1A  SUB (substitute character)
  754. X/.notdef       % 1/11   33   27  1B  ESC (escape)
  755. X/.notdef       % 1/12   34   28  1C  IS4/FS (information separator 4 / file separator)
  756. X/.notdef       % 1/13   35   29  1D  IS3/GS (information separator 3 / group separator)
  757. X/.notdef       % 1/14   36   30  1E  IS2/RS (information separator 2 / record separator)
  758. X/.notdef       % 1/15   37   31  1F  IS1/US (information separator 1 / unit separator)
  759. X/space         % 2/ 0   40   32  20  space
  760. X/exclam        % 2/ 1   41   33  21  exclamation mark
  761. X/quotedbl      % 2/ 2   42   34  22  quotation mark
  762. X/numbersign    % 2/ 3   43   35  23  number sign
  763. X/dollar        % 2/ 4   44   36  24  dollar sign
  764. X/percent       % 2/ 5   45   37  25  percent sign
  765. X/ampersand     % 2/ 6   46   38  26  ampersand
  766. X/quoteright    % 2/ 7   47   39  27  apostrophe
  767. X/parenleft     % 2/ 8   50   40  28  left parenthesis
  768. X/parenright    % 2/ 9   51   41  29  right parenthesis
  769. X/asterisk      % 2/10   52   42  2A  asterisk
  770. X/plus          % 2/11   53   43  2B  plus sign
  771. X/comma         % 2/12   54   44  2C  comma
  772. X/minus         % 2/13   55   45  2D  hyphen, minus sign
  773. X/period        % 2/14   56   46  2E  full stop
  774. X/slash         % 2/15   57   47  2F  solidus
  775. X/zero          % 3/ 0   60   48  30  digit zero
  776. X/one           % 3/ 1   61   49  31  digit one
  777. X/two           % 3/ 2   62   50  32  digit two
  778. X/three         % 3/ 3   63   51  33  digit three
  779. X/four          % 3/ 4   64   52  34  digit four
  780. X/five          % 3/ 5   65   53  35  digit five
  781. X/six           % 3/ 6   66   54  36  digit six
  782. X/seven         % 3/ 7   67   55  37  digit seven
  783. X/eight         % 3/ 8   70   56  38  digit eight
  784. X/nine          % 3/ 9   71   57  39  digit nine
  785. X/colon         % 3/10   72   58  3A  colon
  786. X/semicolon     % 3/11   73   59  3B  semicolon
  787. X/less          % 3/12   74   60  3C  less-than sign
  788. X/equal         % 3/13   75   61  3D  equals sign
  789. X/greater       % 3/14   76   62  3E  greater-than sign
  790. X/question      % 3/15   77   63  3F  question mark
  791. X/at            % 4/ 0  100   64  40  commercial at
  792. X/A             % 4/ 1  101   65  41  A
  793. X/B             % 4/ 2  102   66  42  B
  794. X/C             % 4/ 3  103   67  43  C
  795. X/D             % 4/ 4  104   68  44  D
  796. X/E             % 4/ 5  105   69  45  E
  797. X/F             % 4/ 6  106   70  46  F
  798. X/G             % 4/ 7  107   71  47  G
  799. X/H             % 4/ 8  110   72  48  H
  800. X/I             % 4/ 9  111   73  49  I
  801. X/J             % 4/10  112   74  4A  J
  802. X/K             % 4/11  113   75  4B  K
  803. X/L             % 4/12  114   76  4C  L
  804. X/M             % 4/13  115   77  4D  M
  805. X/N             % 4/14  116   78  4E  N
  806. X/O             % 4/15  117   79  4F  O
  807. X/P             % 5/ 0  120   80  50  P
  808. X/Q             % 5/ 1  121   81  51  Q
  809. X/R             % 5/ 2  122   82  52  R
  810. X/S             % 5/ 3  123   83  53  S
  811. X/T             % 5/ 4  124   84  54  T
  812. X/U             % 5/ 5  125   85  55  U
  813. X/V             % 5/ 6  126   86  56  V
  814. X/W             % 5/ 7  127   87  57  W
  815. X/X             % 5/ 8  130   88  58  X
  816. X/Y             % 5/ 9  131   89  59  Y
  817. X/Z             % 5/10  132   90  5A  Z
  818. X/bracketleft   % 5/11  133   91  5B  left square bracket
  819. X/backslash     % 5/12  134   92  5C  reverse solidus
  820. X/bracketright  % 5/13  135   93  5D  right square bracket
  821. X/asciicircum   % 5/14  136   94  5E  circumflex accent
  822. X/underscore    % 5/15  137   95  5F  low line, underline
  823. X/quoteleft     % 6/ 0  140   96  60  grave accent
  824. X/a             % 6/ 1  141   97  61  a
  825. X/b             % 6/ 2  142   98  62  b
  826. X/c             % 6/ 3  143   99  63  c
  827. X/d             % 6/ 4  144  100  64  d
  828. X/e             % 6/ 5  145  101  65  e
  829. X/f             % 6/ 6  146  102  66  f
  830. X/g             % 6/ 7  147  103  67  g
  831. X/h             % 6/ 8  150  104  68  h
  832. X/i             % 6/ 9  151  105  69  i
  833. X/j             % 6/10  152  106  6A  j
  834. X/k             % 6/11  153  107  6B  k
  835. X/l             % 6/12  154  108  6C  l
  836. X/m             % 6/13  155  109  6D  m
  837. X/n             % 6/14  156  110  6E  n
  838. X/o             % 6/15  157  111  6F  o
  839. X/p             % 7/ 0  160  112  70  p
  840. X/q             % 7/ 1  161  113  71  q
  841. X/r             % 7/ 2  162  114  72  r
  842. X/s             % 7/ 3  163  115  73  s
  843. X/t             % 7/ 4  164  116  74  t
  844. X/u             % 7/ 5  165  117  75  u
  845. X/v             % 7/ 6  166  118  76  v
  846. X/w             % 7/ 7  167  119  77  w
  847. X/x             % 7/ 8  170  120  78  x
  848. X/y             % 7/ 9  171  121  79  y
  849. X/z             % 7/10  172  122  7A  z
  850. X/braceleft     % 7/11  173  123  7B  left curly bracket
  851. X/bar           % 7/12  174  124  7C  vertical line
  852. X/braceright    % 7/13  175  125  7D  right curly bracket
  853. X/asciitilde    % 7/14  176  126  7E  tilde
  854. X/.notdef       % 7/15  177  127  7F  DEL (delete)
  855. X/emdash        % 8/ 0  200  128  80
  856. X/Lslash        % 8/ 1  201  129  81  capital L with stroke
  857. X/OE            % 8/ 2  202  130  82  capital OE ligature
  858. X/Scaron        % 8/ 3  203  131  83  capital S with caron
  859. X/Ydieresis     % 8/ 4  204  132  84  capital Y with diaeresis or umlaut mark
  860. X/Zcaron        % 8/ 5  205  133  85  capital Z with caron
  861. X/.notdef       % 8/ 6  206  134  86
  862. X/.notdef       % 8/ 7  207  135  87
  863. X/endash        % 8/ 8  210  136  88
  864. X/lslash        % 8/ 9  211  137  89  small l with stroke
  865. X/oe            % 8/10  212  138  8A  small oe ligature
  866. X/scaron        % 8/11  213  139  8B  small s with caron
  867. X/.notdef       % 8/12  214  140  8C
  868. X/zcaron        % 8/13  215  141  8D  small z with caron
  869. X/.notdef       % 8/14  216  142  8E
  870. X/.notdef       % 8/15  217  143  8F
  871. X/dotlessi      % 9/ 0  220  144  90
  872. X/grave         % 9/ 1  221  145  91
  873. X/acute         % 9/ 2  222  146  92
  874. X/circumflex    % 9/ 3  223  147  93
  875. X/tilde         % 9/ 4  224  148  94
  876. X/macron        % 9/ 5  225  149  95
  877. X/breve         % 9/ 6  226  150  96
  878. X/dotaccent     % 9/ 7  227  151  97
  879. X/dieresis      % 9/ 8  230  152  98
  880. X/.notdef       % 9/ 9  231  153  99
  881. X/ring          % 9/10  232  154  9A
  882. X/cedilla       % 9/11  233  155  9B
  883. X/.notdef       % 9/12  234  156  9C
  884. X/hungarumlaut  % 9/13  235  157  9D
  885. X/ogonek        % 9/14  236  158  9E
  886. X/caron         % 9/15  237  159  9F
  887. X/space         %10/ 0  240  160  A0  NBSP (no-break space)
  888. X/exclamdown    %10/ 1  241  161  A1  inverted exclamation mark
  889. X/cent          %10/ 2  242  162  A2  cent sign
  890. X/sterling      %10/ 3  243  163  A3  pound sign
  891. X/currency      %10/ 4  244  164  A4  general currency sign
  892. X/yen           %10/ 5  245  165  A5  yen sign
  893. X/brokenbar     %10/ 6  246  166  A6  broken vertical line
  894. X/section       %10/ 7  247  167  A7  section sign
  895. X/dieresis      %10/ 8  250  168  A8  diaeresis
  896. X/copyright     %10/ 9  251  169  A9  copyright sign
  897. X/ordfeminine   %10/10  252  170  AA  ordinal indicator, feminine
  898. X/guillemotleft %10/11  253  171  AB  angle quotation mark left
  899. X/logicalnot    %10/12  254  172  AC  not sign
  900. X/hyphen        %10/13  255  173  AD  soft hyphen
  901. X/registered    %10/14  256  174  AE  registered sign
  902. X/macron        %10/15  257  175  AF  macron
  903. X/degree        %11/ 0  260  176  B0  degree sign
  904. X/plusminus     %11/ 1  261  177  B1  plus or minus sign
  905. X/twosuperior   %11/ 2  262  178  B2  superscript two
  906. X/threesuperior %11/ 3  263  179  B3  superscript three
  907. X/acute         %11/ 4  264  180  B4  acute accent
  908. X/mu            %11/ 5  265  181  B5  micro sign
  909. X/paragraph     %11/ 6  266  182  B6  pilcrow
  910. X/periodcentered%11/ 7  267  183  B7  middle dot
  911. X/cedilla       %11/ 8  270  184  B8  cedilla
  912. X/onesuperior   %11/ 9  271  185  B9  superscript one
  913. X/ordmasculine  %11/10  272  186  BA  ordinal indicator, masculine
  914. X/guillemotright%11/11  273  187  BB  angle quotation mark right
  915. X/onequarter    %11/12  274  188  BC  fraction one-quarter
  916. X/onehalf       %11/13  275  189  BD  fraction one-half
  917. X/threequarters %11/14  276  190  BE  fraction three-quarters
  918. X/questiondown  %11/15  277  191  BF  inverted question mark
  919. X/Agrave        %12/ 0  300  192  C0  capital A with grave accent
  920. X/Aacute        %12/ 1  301  193  C1  capital A with acute accent
  921. X/Acircumflex   %12/ 2  302  194  C2  capital A with circumflex accent
  922. X/Atilde        %12/ 3  303  195  C3  capital A with tilde
  923. X/Adieresis     %12/ 4  304  196  C4  capital A with diaeresis or umlaut mark
  924. X/Aring         %12/ 5  305  197  C5  capital A with ring
  925. X/AE            %12/ 6  306  198  C6  capital AE diphthong
  926. X/Ccedilla      %12/ 7  307  199  C7  capital C with cedilla
  927. X/Egrave        %12/ 8  310  200  C8  capital E with grave accent
  928. X/Eacute        %12/ 9  311  201  C9  capital E with acute accent
  929. X/Ecircumflex   %12/10  312  202  CA  capital E with circumflex accent
  930. X/Edieresis     %12/11  313  203  CB  capital E with diaeresis or umlaut mark
  931. X/Igrave        %12/12  314  204  CC  capital I with grave accent
  932. X/Iacute        %12/13  315  205  CD  capital I with acute accent
  933. X/Icircumflex   %12/14  316  206  CE  capital I with circumflex accent
  934. X/Idieresis     %12/15  317  207  CF  capital I with diaeresis or umlaut mark
  935. X/Eth           %13/ 0  320  208  D0  capital D with stroke, Icelandic eth
  936. X/Ntilde        %13/ 1  321  209  D1  capital N with tilde
  937. X/Ograve        %13/ 2  322  210  D2  capital O with grave accent
  938. X/Oacute        %13/ 3  323  211  D3  capital O with acute accent
  939. X/Ocircumflex   %13/ 4  324  212  D4  capital O with circumflex accent
  940. X/Otilde        %13/ 5  325  213  D5  capital O with tilde
  941. X/Odieresis     %13/ 6  326  214  D6  capital O with diaeresis or umlaut mark
  942. X/multiply      %13/ 7  327  215  D7  multiplication sign
  943. X/Oslash        %13/ 8  330  216  D8  capital O with slash
  944. X/Ugrave        %13/ 9  331  217  D9  capital U with grave accent
  945. X/Uacute        %13/10  332  218  DA  capital U with acute accent
  946. X/Ucircumflex   %13/11  333  219  DB  capital U with circumflex accent
  947. X/Udieresis     %13/12  334  220  DC  capital U with diaeresis or umlaut mark
  948. X/Yacute        %13/13  335  221  DD  capital Y with acute accent
  949. X/Thorn         %13/14  336  222  DE  capital thorn, Icelandic
  950. X/germandbls    %13/15  337  223  DF  small sharp s, German
  951. X/agrave        %14/ 0  340  224  E0  small a with grave accent
  952. X/aacute        %14/ 1  341  225  E1  small a with acute accent
  953. X/acircumflex   %14/ 2  342  226  E2  small a with circumflex accent
  954. X/atilde        %14/ 3  343  227  E3  small a with tilde
  955. X/adieresis     %14/ 4  344  228  E4  small a with diaeresis or umlaut mark
  956. X/aring         %14/ 5  345  229  E5  small a with ring
  957. X/ae            %14/ 6  346  230  E6  small ae diphthong
  958. X/ccedilla      %14/ 7  347  231  E7  small c with cedilla
  959. X/egrave        %14/ 8  350  232  E8  small e with grave accent
  960. X/eacute        %14/ 9  351  233  E9  small e with acute accent
  961. X/ecircumflex   %14/10  352  234  EA  small e with circumflex accent
  962. X/edieresis     %14/11  353  235  EB  small e with diaeresis or umlaut mark
  963. X/igrave        %14/12  354  236  EC  small i with grave accent
  964. X/iacute        %14/13  355  237  ED  small i with acute accent
  965. X/icircumflex   %14/14  356  238  EE  small i with circumflex accent
  966. X/idieresis     %14/15  357  239  EF  small i with diaeresis or umlaut mark
  967. X/eth           %15/ 0  360  240  F0  small d with stroke, Icelandic eth
  968. X/ntilde        %15/ 1  361  241  F1  small n with tilde
  969. X/ograve        %15/ 2  362  242  F2  small o with grave accent
  970. X/oacute        %15/ 3  363  243  F3  small o with acute accent
  971. X/ocircumflex   %15/ 4  364  244  F4  small o with circumflex accent
  972. X/otilde        %15/ 5  365  245  F5  small o with tilde
  973. X/odieresis     %15/ 6  366  246  F6  small o with diaeresis or umlaut mark
  974. X/divide        %15/ 7  367  247  F7  division sign
  975. X/oslash        %15/ 8  370  248  F8  small o with slash
  976. X/ugrave        %15/ 9  371  249  F9  small u with grave accent
  977. X/uacute        %15/10  372  250  FA  small u with acute accent
  978. X/ucircumflex   %15/11  373  251  FB  small u with circumflex accent
  979. X/udieresis     %15/12  374  252  FC  small u with diaeresis or umlaut mark
  980. X/yacute        %15/13  375  253  FD  small y with acute accent
  981. X/thorn         %15/14  376  254  FE  small thorn, Icelandic
  982. X/ydieresis     %15/15  377  255  FF  small y with diaeresis or umlaut mark
  983. X]PDEF
  984. X
  985. X`/'REENCOD % /NewName  /OldName 
  986. X   {% def
  987. X   PFNDFNT dup length dict % Create dictionary as big as OldName.
  988. X   begin % Use it.
  989. X         {% forall
  990. X         1 index/FID ne{PDEF}{PPOP PPOP}ifelse
  991. X         }
  992. X      forall % For each key / value pair in OldName except /Fid, define it.
  993. X      /Encoding T61Encoding PDEF % Use different encoding.
  994. X      currentdict
  995. X   end
  996. X   definefont PPOP
  997. X}PBIND PDEF
  998. END_OF_FILE
  999. if test 14094 -ne `wc -c <'T-61.m4'`; then
  1000.     echo shar: \"'T-61.m4'\" unpacked with wrong size!
  1001. fi
  1002. # end of 'T-61.m4'
  1003. fi
  1004. if test -f 'bytefreq.c' -a "${1}" != "-c" ; then 
  1005.   echo shar: Will not clobber existing file \"'bytefreq.c'\"
  1006. else
  1007. echo shar: Extracting \"'bytefreq.c'\" \(4601 characters\)
  1008. sed "s/^X//" >'bytefreq.c' <<'END_OF_FILE'
  1009. X/*
  1010. X * bytefreq - frequency-count the bytes in a list of files
  1011. X */
  1012. X
  1013. X#ifndef lint
  1014. Xstatic char _cpyrgt[] = "Copyright 1989 Howard Lee Gayle";
  1015. X#endif lint
  1016. X
  1017. X/*
  1018. X * This program is free software; you can redistribute it and/or modify
  1019. X * it under the terms of the GNU General Public License version 1,
  1020. X * as published by the Free Software Foundation.
  1021. X *
  1022. X * This program is distributed in the hope that it will be useful,
  1023. X * but WITHOUT ANY WARRANTY; without even the implied warranty of
  1024. X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1025. X * GNU General Public License for more details.
  1026. X *
  1027. X * You should have received a copy of the GNU General Public License
  1028. X * along with this program; if not, write to the Free Software
  1029. X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1030. X */
  1031. X
  1032. X#include <stdio.h>
  1033. X#include <howard/port.h>
  1034. X#include <howard/version.h>
  1035. X#include <howard/usage.h>
  1036. X
  1037. XMAINVER ("@(#)$Header: bytefreq.c,v 1.8 89/08/18 08:14:36 howard Exp $");
  1038. XUSAGE ("[-b] [-d] < file-list");
  1039. X
  1040. X#include <ctype.h>
  1041. X#include <howard/malf.h>
  1042. X#include <howard/registers.i>
  1043. X
  1044. Xtypedef struct /* Data for one byte.*/
  1045. X   {
  1046. X   double b_freq; /* Frequency.*/
  1047. X   ulongT b_cnt;  /* Count.*/
  1048. X   rcharT b_byte; /* The byte.*/
  1049. X   }
  1050. XbyT;
  1051. XPRIVATE byT bytes[256]; /* The byte array.*/
  1052. X
  1053. XPRIVATE char eIntern[] = "Internal error %s";
  1054. X
  1055. X/* output - output the frequency table                                  */
  1056. X
  1057. XPRIVATE void output()
  1058. X
  1059. X/* Function:
  1060. X *    Display bytes[] on standard output.
  1061. X */
  1062. X{
  1063. XR1 byT    *bp; /* Steps through bytes[].*/
  1064. XR2 rcharT  b;  /* Current byte.*/
  1065. X
  1066. XPUTCHAR ('\n');
  1067. Xfor (bp = bytes; bp != &bytes[256]; ++bp)
  1068. X   {
  1069. X   b = bp->b_byte;
  1070. X   PRINTF ("%2d/%2d  8#%03o  %3d  16#%02x  %c  %10lu  %12.10f\n",
  1071. X      b / 16, b % 16, b, b, b, (isprint (b) ? b : ' '),
  1072. X      bp->b_cnt, bp->b_freq);
  1073. X   }
  1074. X}
  1075. X
  1076. X/* qsort1 - auxiliary function for sorting bytes[]                         */
  1077. X
  1078. XPRIVATE int qsort1 (bp1, bp2)
  1079. XR1 byT *bp1;
  1080. XR2 byT *bp2;
  1081. X
  1082. X/* Function:
  1083. X *    Called from qsort when sorting bytes[] into descending order.
  1084. X * Returns:
  1085. X *    
  1086. X */
  1087. X{
  1088. Xif (bp2->b_cnt >  bp1->b_cnt) return (1);
  1089. Xif (bp2->b_cnt == bp1->b_cnt) return (0);
  1090. Xreturn (-1);
  1091. X}
  1092. X
  1093. X/* main - main function                            */
  1094. X
  1095. XPUBLIC int main (argc, argv)
  1096. X   int    argc; /* Number of arguments.*/
  1097. XR6 bStrT *argv; /* Points to array of argument strings.*/
  1098. X
  1099. X/* Function:
  1100. X *    Compute a byte-frequency table of a list of files.
  1101. X * Algorithm:
  1102. X *    Decode the arguments.  Read the standard input line by line.
  1103. X *      Treat each line as a file name and open it.
  1104. X *      Read each file byte by byte.
  1105. X *      Update the count for the corresponding byte.
  1106. X *      For output in byte order, call output().
  1107. X *      For output in decreasing frequency order, sort, then call output().
  1108. X */
  1109. X
  1110. X{
  1111. XR5     rcharT    c;                   /* Option letter.*/
  1112. Xextern int       optind;              /* See getopt (3).*/
  1113. Xextern cStrT     optarg;              /* See getopt (3).*/
  1114. XR3     ulongT    t = 0;               /* Total bytes.*/
  1115. XR1     streamT   ifp;                 /* Current input stream.*/
  1116. XR2     rcharT    b;                   /* Current input byte.*/
  1117. XR4     byT      *bp;                  /* Steps through bytes[].*/
  1118. X       double    dt;                  /* Total bytes. */
  1119. XR7     boolT     byteflg = FALSE;     /* Set for output in byte order.*/
  1120. XR8     boolT     descendflg = FALSE;  /* Set for output in descending order.*/
  1121. X       unsigned  ln = 0;              /* Line number (not used).*/
  1122. X       byteT     ib[MFILE];           /* Input line buffer. */
  1123. X
  1124. Xwhile (EOF != (c = getopt (argc, (cStrT *) argv, "bd")))
  1125. X   {
  1126. X   switch (c)
  1127. X      {
  1128. X      case '?':
  1129. X         usage();
  1130. X         break;
  1131. X      case 'b':
  1132. X         byteflg = TRUE;
  1133. X         break;
  1134. X      case 'd':
  1135. X         descendflg = TRUE;
  1136. X         break;
  1137. X      default:
  1138. X         malf1 (eIntern, "main 1");
  1139. X         break;
  1140. X      }
  1141. X   }
  1142. Xargv += optind;
  1143. Xif ((NULBSTR != *argv) || (!byteflg && !descendflg)) usage();
  1144. Xfor (b = 0; b != 256; ++b)
  1145. X   bytes[b].b_byte = b;
  1146. Xwhile (NULBSTR != getlin (ib, MFILE, stdin, S("Standard Input"), &ln, 0))
  1147. X   {
  1148. X   ifp = mfopen (ib, "r");
  1149. X   while (EOF != (b = getc (ifp)))
  1150. X      {
  1151. X      ++bytes[b].b_cnt;
  1152. X      ++t;
  1153. X      }
  1154. X   if (ferror (ifp)) malf1 ("%s: Read error", ib);
  1155. X   mfclose (ifp, ib);
  1156. X   }
  1157. XPRINTF ("Total bytes: %lu\n", t);
  1158. Xif (0 != t)
  1159. X   {
  1160. X   dt = t;
  1161. X   for (bp = bytes; bp != &bytes[256]; ++bp)
  1162. X      bp->b_freq = ((double) bp->b_cnt) / dt;
  1163. X   if (byteflg) output();
  1164. X   if (descendflg)
  1165. X      {
  1166. X      qsort ((cStrT) bytes, 256, sizeof (byT), qsort1);
  1167. X      output();
  1168. X      }
  1169. X   }
  1170. Xmfflush (stdout, S("Standard Output"));
  1171. Xexit (SUCCESS);
  1172. X
  1173. X#ifdef lint
  1174. Xreturn (SUCCESS);
  1175. X#endif
  1176. X}
  1177. END_OF_FILE
  1178. if test 4601 -ne `wc -c <'bytefreq.c'`; then
  1179.     echo shar: \"'bytefreq.c'\" unpacked with wrong size!
  1180. fi
  1181. # end of 'bytefreq.c'
  1182. fi
  1183. if test -f 'cz-Gnews.el' -a "${1}" != "-c" ; then 
  1184.   echo shar: Will not clobber existing file \"'cz-Gnews.el'\"
  1185. else
  1186. echo shar: Extracting \"'cz-Gnews.el'\" \(1539 characters\)
  1187. sed "s/^X//" >'cz-Gnews.el' <<'END_OF_FILE'
  1188. X;; cz-Gnews.el - Gnews interface to cz(1)
  1189. X;;
  1190. X;; $Header: cz-Gnews.el,v 1.2 89/09/22 07:41:31 howard Exp $
  1191. X;;
  1192. X;; Copyright   1989 Howard Lee Gayle
  1193. X;; This file is written in the ISO 8859/1 character set.
  1194. X;;
  1195. X;; $Header: cz-Gnews.el,v 1.2 89/09/22 07:41:31 howard Exp $
  1196. X;;
  1197. X;; This program is free software; you can redistribute it and/or modify
  1198. X;; it under the terms of the GNU General Public License version 1,
  1199. X;; as published by the Free Software Foundation.
  1200. X;;
  1201. X;; This program is distributed in the hope that it will be useful,
  1202. X;; but WITHOUT ANY WARRANTY; without even the implied warranty of
  1203. X;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1204. X;; GNU General Public License for more details.
  1205. X;;
  1206. X;; You should have received a copy of the GNU General Public License
  1207. X;; along with this program; if not, write to the Free Software
  1208. X;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1209. X
  1210. X(require 'cz)
  1211. X(require 'hook-add)
  1212. X
  1213. X(defun Gnews-cz ()
  1214. X   "Laser-print the current article."
  1215. X   (interactive)
  1216. X   (if article-grab-point (article-forward-intern nil))
  1217. X   (cz-region-1 1 (article-max)
  1218. X      (concat
  1219. X         (article-field "Newsgroups")
  1220. X         "."
  1221. X         (int-to-string article-current)
  1222. X         " "
  1223. X         (cz-simple-from (article-field "From"))
  1224. X         ": "
  1225. X         (article-field "Subject")
  1226. X      )
  1227. X   )
  1228. X)
  1229. X
  1230. X(defun Gnews-cz-bind ()
  1231. X   "Set up local key binding for Gnews-cz."
  1232. X   (local-set-key "L" 'Gnews-cz)
  1233. X)
  1234. X
  1235. X(hook-add 'article-hook 'Gnews-cz-bind)
  1236. X(hook-add 'group-hook   'Gnews-cz-bind)
  1237. X
  1238. X(provide 'Gnews-cz)
  1239. END_OF_FILE
  1240. if test 1539 -ne `wc -c <'cz-Gnews.el'`; then
  1241.     echo shar: \"'cz-Gnews.el'\" unpacked with wrong size!
  1242. fi
  1243. # end of 'cz-Gnews.el'
  1244. fi
  1245. if test -f 'dkus.code' -a "${1}" != "-c" ; then 
  1246.   echo shar: Will not clobber existing file \"'dkus.code'\"
  1247. else
  1248. echo shar: Extracting \"'dkus.code'\" \(1200 characters\)
  1249. sed "s/^X//" >'dkus.code' <<'END_OF_FILE'
  1250. X; dkus.code - trigram letter encoding for Danish or US English
  1251. X;
  1252. X; Copyright 1989 Howard Lee Gayle
  1253. X; This file is written in the ISO 8859/1 character set.
  1254. X;
  1255. X; $Header: dkus.code,v 1.1 89/08/26 13:33:36 howard Exp $
  1256. X;
  1257. X; This program is free software; you can redistribute it and/or modify
  1258. X; it under the terms of the GNU General Public License version 1,
  1259. X; as published by the Free Software Foundation.
  1260. X;
  1261. X; This program is distributed in the hope that it will be useful,
  1262. X; but WITHOUT ANY WARRANTY; without even the implied warranty of
  1263. X; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1264. X; GNU General Public License for more details.
  1265. X;
  1266. X; You should have received a copy of the GNU General Public License
  1267. X; along with this program; if not, write to the Free Software
  1268. X; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1269. X
  1270. X 0 'a' 'A'
  1271. X 1 'b' 'B'
  1272. X 2 'c' 'C'
  1273. X 3 'd' 'D'
  1274. X 4 'e' 'E'
  1275. X 5 'f' 'F'
  1276. X 6 'g' 'G'
  1277. X 7 'h' 'H'
  1278. X 8 'i' 'I'
  1279. X 9 'j' 'J'
  1280. X10 'k' 'K'
  1281. X11 'l' 'L'
  1282. X12 'm' 'M'
  1283. X13 'n' 'N'
  1284. X14 'o' 'O'
  1285. X15 'p' 'P'
  1286. X16 'q' 'Q'
  1287. X17 'r' 'R'
  1288. X18 's' 'S'
  1289. X19 't' 'T'
  1290. X20 'u' 'U'
  1291. X21 'v' 'V'
  1292. X22 'w' 'W'
  1293. X23 'x' 'X'
  1294. X24 'y' 'Y'
  1295. X25 'z' 'Z'
  1296. X26 '}' ']' 8#345# 8#305#
  1297. X27 '{' '[' 8#346# 8#306#
  1298. X28 '|' '\' 8#370# 8#330#
  1299. END_OF_FILE
  1300. if test 1200 -ne `wc -c <'dkus.code'`; then
  1301.     echo shar: \"'dkus.code'\" unpacked with wrong size!
  1302. fi
  1303. # end of 'dkus.code'
  1304. fi
  1305. echo shar: End of archive 4 \(of 14\).
  1306. cp /dev/null ark4isdone
  1307. MISSING=""
  1308. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ; do
  1309.     if test ! -f ark${I}isdone ; then
  1310.     MISSING="${MISSING} ${I}"
  1311.     fi
  1312. done
  1313. if test "${MISSING}" = "" ; then
  1314.     echo You have unpacked all 14 archives.
  1315.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1316. else
  1317.     echo You still need to unpack the following archives:
  1318.     echo "        " ${MISSING}
  1319. fi
  1320. ##  End of shell archive.
  1321. exit 0
  1322.  
  1323.